!function(t,e){"use strict";t(window).on("elementor/frontend/init",(function(t){var e,s=elementorModules.frontend.handlers.Base;e=s.extend({bindEvents:function(){this.run()},getDefaultSettings:function(){return{resize:!0,useWorker:!0}},onElementChange:debounce((function(t){-1!==t.indexOf("ep_widget_cf_")&&this.run()}),400),settings:function(t){return this.getElementSettings("ep_widget_cf_"+t)},randomInRange:function(t,e){return Math.random()*(e-t)+t},run:function(){var t=this.getDefaultSettings(),e=this.$element;if("yes"===this.settings("confetti")){if(this.settings("z_index")&&(t.zIndex=this.settings("z_index")),this.settings("particle_count.size")&&(t.particleCount=this.settings("particle_count.size")||100),this.settings("start_velocity.size")&&(t.startVelocity=this.settings("start_velocity.size")||45),this.settings("spread.size")&&(t.spread=this.settings("spread.size")||70),this.settings("colors")){var s=this.settings("colors");t.colors=s.split(",")}if(this.settings("shapes")){var n=this.settings("shapes");t.shapes=n.split(/,|\|/)}if("emoji"==this.settings("shape_type")&&this.settings("shapes_emoji")){n=this.settings("shapes_emoji");let e=[];n.split(/,|\|/).forEach((function(t,s){e[s]=confetti.shapeFromText({text:t})})),t.shapes=e}if("svg"==this.settings("shape_type")&&this.settings("shapes_svg")){let e=this.settings("shapes_svg"),s=[];e.split("|").forEach((function(t,e){s[e]=confetti.shapeFromPath({path:t,matrix:[.03597122302158273,0,0,.03597122302158273,-4.856115107913669,-5.071942446043165]})})),t.shapes=s}this.settings("scalar.size")&&(t.scalar=this.settings("scalar.size")||1),this.settings("origin")&&(this.settings("origin_x.size")||this.settings("origin_y.size"))&&(t.origin={x:this.settings("origin_x.size")||.5,y:this.settings("origin_y.size")||.6}),this.settings("angle.size")&&(t.angle=this.settings("angle.size")||90);var i=this,r=function(){if("random"==i.settings("type")&&(t.angle=i.randomInRange(55,i.settings("angle.size")||90),t.spread=i.randomInRange(50,i.settings("spread.size")||70),t.particleCount=i.randomInRange(55,i.settings("particle_count.size")||100)),"fireworks"==i.settings("type"))var e=i.settings("fireworks_duration.size")||1500,r=Date.now()+e,a={startVelocity:i.settings("start_velocity.size")||30,spread:i.settings("spread.size")||360,shapes:i.settings("shapes")?n.split(","):["circle","circle","square"],ticks:60,zIndex:i.settings("z_index")||0},o=setInterval((function(){var t=r-Date.now();if(t<=0)return clearInterval(o);var s=t/e*50;confetti(Object.assign({},a,{particleCount:s,origin:{x:i.randomInRange(.1,.3),y:Math.random()-.2}})),confetti(Object.assign({},a,{particleCount:s,origin:{x:i.randomInRange(.7,.9),y:Math.random()-.2}}))}),250);if("school-pride"==i.settings("type")){e=i.settings("fireworks_duration.size")||1500;var g=Date.now()+e;!function t(){confetti({particleCount:i.settings("particle_count.size")||2,angle:i.settings("angle.size")||60,spread:i.settings("spread.size")||55,shapes:i.settings("shapes")?n.split(","):["circle","circle","square"],origin:{x:0},colors:s.split(",")}),confetti({particleCount:i.settings("particle_count.size")||2,angle:2*(i.settings("angle.size")||60),spread:i.settings("spread.size")||55,shapes:i.settings("shapes")?n.split(","):["circle","circle","square"],origin:{x:1},colors:s.split(",")}),Date.now()0&&requestAnimationFrame(t)}(),setInterval((function(){}),5e3)}"basic"!=i.settings("type")&&"random"!=i.settings("type")||(i.instance=confetti(t))};"yes"==this.settings("confetti")&&("click"==this.settings("trigger_type")?jQuery(this.settings("trigger_selector")).on("click",(function(){r()})):"mouseenter"==this.settings("trigger_type")?jQuery(this.settings("trigger_selector")).on("mouseenter",(function(){r()})):"ajax-success"==this.settings("trigger_type")?jQuery(document).ajaxComplete((function(t,e,s){r()})):"delay"==this.settings("trigger_type")?setTimeout((function(){r()}),this.settings("trigger_delay.size")?this.settings("trigger_delay.size"):1e3):"onview"==this.settings("trigger_type")?elementorFrontend.waypoint(e,(function(){r()}),{offset:"80%"}):r())}}}),elementorFrontend.hooks.addAction("frontend/element_ready/widget",(function(t){elementorFrontend.elementsHandler.addHandler(e,{$element:t})})),elementorFrontend.hooks.addAction("frontend/element_ready/section",(function(t){elementorFrontend.elementsHandler.addHandler(e,{$element:t})})),elementorFrontend.hooks.addAction("frontend/element_ready/container",(function(t){elementorFrontend.elementsHandler.addHandler(e,{$element:t})}))}))}(jQuery,window.elementorFrontend); (function ($){ const wdtInteractiveShowcaseWidgetHandler=function($scope, $){ const $showcaseItem=$scope.find('.wdt-interactive-showcase-container'); const $hover_and_click=$showcaseItem.data('click'); var hover_content_section=$showcaseItem.find('ul li'); var image_content_section=$showcaseItem.find('.wdt-interactive-showcase-content-wrapper').find('div'); $showcaseItem.find('ul li:first-child').addClass('wdt-interactive-showcase-active'); $showcaseItem.find('.wdt-interactive-showcase-content-wrapper').find('div:first-child').addClass('wdt-interactive-showcase-active'); if($hover_and_click){ hover_content_section.click(function(){ var content_id_name=$(this).attr('id'); if(! ($(this).hasClass('wdt-interactive-showcase-active'))){ $showcaseItem.find('ul li').removeClass('wdt-interactive-showcase-active'); $showcaseItem.find('.wdt-interactive-showcase-content-wrapper').find('div').removeClass('wdt-interactive-showcase-active'); $(this).addClass('wdt-interactive-showcase-active'); image_content_section.each(function(){ var this_image=$(this); var image_id_name=this_image.attr('id'); if(image_content_section.is('#' + content_id_name)){ if(image_id_name==content_id_name){ this_image.addClass('wdt-interactive-showcase-active'); }else{ this_image.removeClass('wdt-interactive-showcase-active'); }} }); }}); }else{ hover_content_section.mouseover(function(){ var content_id_name=$(this).attr('id'); if(! ($(this).hasClass('wdt-interactive-showcase-active'))){ $showcaseItem.find('ul li').removeClass('wdt-interactive-showcase-active'); $showcaseItem.find('.wdt-interactive-showcase-content-wrapper').find('div').removeClass('wdt-interactive-showcase-active'); $(this).addClass('wdt-interactive-showcase-active'); image_content_section.each(function(){ var this_image=$(this); var image_id_name=this_image.attr('id'); if(image_content_section.is('#' + content_id_name)){ if(image_id_name==content_id_name){ this_image.addClass('wdt-interactive-showcase-active'); }else{ this_image.removeClass('wdt-interactive-showcase-active'); }} }); }}); }}; $(window).on('elementor/frontend/init', function (){ elementorFrontend.hooks.addAction('frontend/element_ready/wdt-interactive-showcase.default', wdtInteractiveShowcaseWidgetHandler); }); })(jQuery); !function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof exports?module.exports=e(require("jquery")):e(jQuery)}(function(m){var i=/\+/g;function x(e){return v.raw?e:encodeURIComponent(e)}function g(e,n){var o=v.raw?e:function(e){0===e.indexOf('"')&&(e=e.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\"));try{return e=decodeURIComponent(e.replace(i," ")),v.json?JSON.parse(e):e}catch(e){}}(e);return m.isFunction(n)?n(o):o}var v=m.cookie=function(e,n,o){if(1(a||r.height())},_setFocus:function(){(n.st.focus?n.content.find(n.st.focus).eq(0):n.wrap).focus()},_onFocusIn:function(b){if(b.target!==n.wrap[0]&&!a.contains(n.wrap[0],b.target))return n._setFocus(),!1},_parseMarkup:function(b,c,d){var e;d.data&&(c=a.extend(d.data,c)),y(f,[b,c,d]),a.each(c,function(c,d){if(d===undefined||d===!1)return!0;e=c.split("_");if(e.length>1){var f=b.find(j+"-"+e[0]);if(f.length>0){var g=e[1];g==="replaceWith"?f[0]!==d[0]&&f.replaceWith(d):g==="img"?f.is("img")?f.attr("src",d):f.replaceWith(a("").attr("src",d).attr("class",f.attr("class"))):f.attr(e[1],d)}}else b.find(j+"-"+c).html(d)})},_getScrollbarSize:function(){if(n.scrollbarSize===undefined){var a=document.createElement("div");a.style.cssText="width: 99px; height: 99px; overflow: scroll; position: absolute; top: -9999px;",document.body.appendChild(a),n.scrollbarSize=a.offsetWidth-a.clientWidth,document.body.removeChild(a)}return n.scrollbarSize}},a.magnificPopup={instance:null,proto:o.prototype,modules:[],open:function(b,c){return A(),b?b=a.extend(!0,{},b):b={},b.isObj=!0,b.index=c||0,this.instance.open(b)},close:function(){return a.magnificPopup.instance&&a.magnificPopup.instance.close()},registerModule:function(b,c){c.options&&(a.magnificPopup.defaults[b]=c.options),a.extend(this.proto,c.proto),this.modules.push(b)},defaults:{disableOn:0,key:null,midClick:!1,mainClass:"",preloader:!0,focus:"",closeOnContentClick:!1,closeOnBgClick:!0,closeBtnInside:!0,showCloseBtn:!0,enableEscapeKey:!0,modal:!1,alignTop:!1,removalDelay:0,prependTo:null,fixedContentPos:"auto",fixedBgPos:"auto",overflowY:"auto",closeMarkup:'',tClose:"Close (Esc)",tLoading:"Loading...",autoFocusLast:!0}},a.fn.magnificPopup=function(b){A();var c=a(this);if(typeof b=="string")if(b==="open"){var d,e=p?c.data("magnificPopup"):c[0].magnificPopup,f=parseInt(arguments[1],10)||0;e.items?d=e.items[f]:(d=c,e.delegate&&(d=d.find(e.delegate)),d=d.eq(f)),n._openClick({mfpEl:d},c,e)}else n.isOpen&&n[b].apply(n,Array.prototype.slice.call(arguments,1));else b=a.extend(!0,{},b),p?c.data("magnificPopup",b):c[0].magnificPopup=b,n.addGroup(c,b);return c};var C="inline",D,E,F,G=function(){F&&(E.after(F.addClass(D)).detach(),F=null)};a.magnificPopup.registerModule(C,{options:{hiddenClass:"hide",markup:"",tNotFound:"Content not found"},proto:{initInline:function(){n.types.push(C),w(b+"."+C,function(){G()})},getInline:function(b,c){G();if(b.src){var d=n.st.inline,e=a(b.src);if(e.length){var f=e[0].parentNode;f&&f.tagName&&(E||(D=d.hiddenClass,E=x(D),D="mfp-"+D),F=e.after(E).detach().removeClass(D)),n.updateStatus("ready")}else n.updateStatus("error",d.tNotFound),e=a("
");return b.inlineElement=e,e}return n.updateStatus("ready"),n._parseMarkup(c,{},b),c}}});var H="ajax",I,J=function(){I&&a(document.body).removeClass(I)},K=function(){J(),n.req&&n.req.abort()};a.magnificPopup.registerModule(H,{options:{settings:null,cursor:"mfp-ajax-cur",tError:'The content could not be loaded.'},proto:{initAjax:function(){n.types.push(H),I=n.st.ajax.cursor,w(b+"."+H,K),w("BeforeChange."+H,K)},getAjax:function(b){I&&a(document.body).addClass(I),n.updateStatus("loading");var c=a.extend({url:b.src,success:function(c,d,e){var f={data:c,xhr:e};y("ParseAjax",f),n.appendContent(a(f.data),H),b.finished=!0,J(),n._setFocus(),setTimeout(function(){n.wrap.addClass(k)},16),n.updateStatus("ready"),y("AjaxContentAdded")},error:function(){J(),b.finished=b.loadError=!0,n.updateStatus("error",n.st.ajax.tError.replace("%url%",b.src))}},n.st.ajax.settings);return n.req=a.ajax(c),""}}});var L,M=function(b){if(b.data&&b.data.title!==undefined)return b.data.title;var c=n.st.image.titleSrc;if(c){if(a.isFunction(c))return c.call(n,b);if(b.el)return b.el.attr(c)||""}return""};a.magnificPopup.registerModule("image",{options:{markup:'
',cursor:"mfp-zoom-out-cur",titleSrc:"title",verticalFit:!0,tError:'The image could not be loaded.'},proto:{initImage:function(){var c=n.st.image,d=".image";n.types.push("image"),w(g+d,function(){n.currItem.type==="image"&&c.cursor&&a(document.body).addClass(c.cursor)}),w(b+d,function(){c.cursor&&a(document.body).removeClass(c.cursor),r.off("resize"+j)}),w("Resize"+d,n.resizeImage),n.isLowIE&&w("AfterChange",n.resizeImage)},resizeImage:function(){var a=n.currItem;if(!a||!a.img)return;if(n.st.image.verticalFit){var b=0;n.isLowIE&&(b=parseInt(a.img.css("padding-top"),10)+parseInt(a.img.css("padding-bottom"),10)),a.img.css("max-height",n.wH-b)}},_onImageHasSize:function(a){a.img&&(a.hasSize=!0,L&&clearInterval(L),a.isCheckingImgSize=!1,y("ImageHasSize",a),a.imgHidden&&(n.content&&n.content.removeClass("mfp-loading"),a.imgHidden=!1))},findImageSize:function(a){var b=0,c=a.img[0],d=function(e){L&&clearInterval(L),L=setInterval(function(){if(c.naturalWidth>0){n._onImageHasSize(a);return}b>200&&clearInterval(L),b++,b===3?d(10):b===40?d(50):b===100&&d(500)},e)};d(1)},getImage:function(b,c){var d=0,e=function(){b&&(b.img[0].complete?(b.img.off(".mfploader"),b===n.currItem&&(n._onImageHasSize(b),n.updateStatus("ready")),b.hasSize=!0,b.loaded=!0,y("ImageLoadComplete")):(d++,d<200?setTimeout(e,100):f()))},f=function(){b&&(b.img.off(".mfploader"),b===n.currItem&&(n._onImageHasSize(b),n.updateStatus("error",g.tError.replace("%url%",b.src))),b.hasSize=!0,b.loaded=!0,b.loadError=!0)},g=n.st.image,h=c.find(".mfp-img");if(h.length){var i=document.createElement("img");i.className="mfp-img",b.el&&b.el.find("img").length&&(i.alt=b.el.find("img").attr("alt")),b.img=a(i).on("load.mfploader",e).on("error.mfploader",f),i.src=b.src,h.is("img")&&(b.img=b.img.clone()),i=b.img[0],i.naturalWidth>0?b.hasSize=!0:i.width||(b.hasSize=!1)}return n._parseMarkup(c,{title:M(b),img_replaceWith:b.img},b),n.resizeImage(),b.hasSize?(L&&clearInterval(L),b.loadError?(c.addClass("mfp-loading"),n.updateStatus("error",g.tError.replace("%url%",b.src))):(c.removeClass("mfp-loading"),n.updateStatus("ready")),c):(n.updateStatus("loading"),b.loading=!0,b.hasSize||(b.imgHidden=!0,c.addClass("mfp-loading"),n.findImageSize(b)),c)}}});var N,O=function(){return N===undefined&&(N=document.createElement("p").style.MozTransform!==undefined),N};a.magnificPopup.registerModule("zoom",{options:{enabled:!1,easing:"ease-in-out",duration:300,opener:function(a){return a.is("img")?a:a.find("img")}},proto:{initZoom:function(){var a=n.st.zoom,d=".zoom",e;if(!a.enabled||!n.supportsTransition)return;var f=a.duration,g=function(b){var c=b.clone().removeAttr("style").removeAttr("class").addClass("mfp-animated-image"),d="all "+a.duration/1e3+"s "+a.easing,e={position:"fixed",zIndex:9999,left:0,top:0,"-webkit-backface-visibility":"hidden"},f="transition";return e["-webkit-"+f]=e["-moz-"+f]=e["-o-"+f]=e[f]=d,c.css(e),c},h=function(){n.content.css("visibility","visible")},i,j;w("BuildControls"+d,function(){if(n._allowZoom()){clearTimeout(i),n.content.css("visibility","hidden"),e=n._getItemToZoom();if(!e){h();return}j=g(e),j.css(n._getOffset()),n.wrap.append(j),i=setTimeout(function(){j.css(n._getOffset(!0)),i=setTimeout(function(){h(),setTimeout(function(){j.remove(),e=j=null,y("ZoomAnimationEnded")},16)},f)},16)}}),w(c+d,function(){if(n._allowZoom()){clearTimeout(i),n.st.removalDelay=f;if(!e){e=n._getItemToZoom();if(!e)return;j=g(e)}j.css(n._getOffset(!0)),n.wrap.append(j),n.content.css("visibility","hidden"),setTimeout(function(){j.css(n._getOffset())},16)}}),w(b+d,function(){n._allowZoom()&&(h(),j&&j.remove(),e=null)})},_allowZoom:function(){return n.currItem.type==="image"},_getItemToZoom:function(){return n.currItem.hasSize?n.currItem.img:!1},_getOffset:function(b){var c;b?c=n.currItem.img:c=n.st.zoom.opener(n.currItem.el||n.currItem);var d=c.offset(),e=parseInt(c.css("padding-top"),10),f=parseInt(c.css("padding-bottom"),10);d.top-=a(window).scrollTop()-e;var g={width:c.width(),height:(p?c.innerHeight():c[0].offsetHeight)-f-e};return O()?g["-moz-transform"]=g.transform="translate("+d.left+"px,"+d.top+"px)":(g.left=d.left,g.top=d.top),g}}});var P="iframe",Q="//about:blank",R=function(a){if(n.currTemplate[P]){var b=n.currTemplate[P].find("iframe");b.length&&(a||(b[0].src=Q),n.isIE8&&b.css("display",a?"block":"none"))}};a.magnificPopup.registerModule(P,{options:{markup:'
',srcAction:"iframe_src",patterns:{youtube:{index:"youtube.com",id:"v=",src:"//www.youtube.com/embed/%id%?autoplay=1"},vimeo:{index:"vimeo.com/",id:"/",src:"//player.vimeo.com/video/%id%?autoplay=1"},gmaps:{index:"//maps.google.",src:"%id%&output=embed"}}},proto:{initIframe:function(){n.types.push(P),w("BeforeChange",function(a,b,c){b!==c&&(b===P?R():c===P&&R(!0))}),w(b+"."+P,function(){R()})},getIframe:function(b,c){var d=b.src,e=n.st.iframe;a.each(e.patterns,function(){if(d.indexOf(this.index)>-1)return this.id&&(typeof this.id=="string"?d=d.substr(d.lastIndexOf(this.id)+this.id.length,d.length):d=this.id.call(this,d)),d=this.src.replace("%id%",d),!1});var f={};return e.srcAction&&(f[e.srcAction]=d),n._parseMarkup(c,f,b),n.updateStatus("ready"),c}}});var S=function(a){var b=n.items.length;return a>b-1?a-b:a<0?b+a:a},T=function(a,b,c){return a.replace(/%curr%/gi,b+1).replace(/%total%/gi,c)};a.magnificPopup.registerModule("gallery",{options:{enabled:!1,arrowMarkup:'',preload:[0,2],navigateByImgClick:!0,arrows:!0,tPrev:"Previous (Left arrow key)",tNext:"Next (Right arrow key)",tCounter:"%curr% of %total%"},proto:{initGallery:function(){var c=n.st.gallery,d=".mfp-gallery";n.direction=!0;if(!c||!c.enabled)return!1;u+=" mfp-gallery",w(g+d,function(){c.navigateByImgClick&&n.wrap.on("click"+d,".mfp-img",function(){if(n.items.length>1)return n.next(),!1}),s.on("keydown"+d,function(a){a.keyCode===37?n.prev():a.keyCode===39&&n.next()})}),w("UpdateStatus"+d,function(a,b){b.text&&(b.text=T(b.text,n.currItem.index,n.items.length))}),w(f+d,function(a,b,d,e){var f=n.items.length;d.counter=f>1?T(c.tCounter,e.index,f):""}),w("BuildControls"+d,function(){if(n.items.length>1&&c.arrows&&!n.arrowLeft){var b=c.arrowMarkup,d=n.arrowLeft=a(b.replace(/%title%/gi,c.tPrev).replace(/%dir%/gi,"left")).addClass(m),e=n.arrowRight=a(b.replace(/%title%/gi,c.tNext).replace(/%dir%/gi,"right")).addClass(m);d.click(function(){n.prev()}),e.click(function(){n.next()}),n.container.append(d.add(e))}}),w(h+d,function(){n._preloadTimeout&&clearTimeout(n._preloadTimeout),n._preloadTimeout=setTimeout(function(){n.preloadNearbyImages(),n._preloadTimeout=null},16)}),w(b+d,function(){s.off(d),n.wrap.off("click"+d),n.arrowRight=n.arrowLeft=null})},next:function(){n.direction=!0,n.index=S(n.index+1),n.updateItemHTML()},prev:function(){n.direction=!1,n.index=S(n.index-1),n.updateItemHTML()},goTo:function(a){n.direction=a>=n.index,n.index=a,n.updateItemHTML()},preloadNearbyImages:function(){var a=n.st.gallery.preload,b=Math.min(a[0],n.items.length),c=Math.min(a[1],n.items.length),d;for(d=1;d<=(n.direction?c:b);d++)n._preloadItem(n.index+d);for(d=1;d<=(n.direction?b:c);d++)n._preloadItem(n.index-d)},_preloadItem:function(b){b=S(b);if(n.items[b].preloaded)return;var c=n.items[b];c.parsed||(c=n.parseEl(b)),y("LazyLoad",c),c.type==="image"&&(c.img=a('').on("load.mfploader",function(){c.hasSize=!0}).on("error.mfploader",function(){c.hasSize=!0,c.loadError=!0,y("LazyLoadError",c)}).attr("src",c.src)),c.preloaded=!0}}});var U="retina";a.magnificPopup.registerModule(U,{options:{replaceSrc:function(a){return a.src.replace(/\.\w+$/,function(a){return"@2x"+a})},ratio:1},proto:{initRetina:function(){if(window.devicePixelRatio>1){var a=n.st.retina,b=a.ratio;b=isNaN(b)?b():b,b>1&&(w("ImageHasSize."+U,function(a,c){c.img.css({"max-width":c.img[0].naturalWidth/b,width:"100%"})}),w("ElementParse."+U,function(c,d){d.src=a.replaceSrc(d,b)}))}}}}),A()}); (function ($){ const wdtPopupBoxWidgetHandler=function($scope){ const instance=new wdtPopupBoxWidgetHandlerInit($scope); instance.init(); }; const wdtPopupBoxWidgetHandlerInit=function($scope){ const $self=this; const $settings=$scope.find('.wdt-popup-box-trigger-holder').data('settings'); const $module_ref_id=$settings['module_ref_id']; const $popup_class=$settings['popup_class']; const $trigger_type=$settings['trigger_type'] ? $settings['trigger_type']:'on-click'; const $on_load_delay=$settings['on_load_delay'] ? +$settings['on_load_delay']['size']:200; const $on_load_after=$settings['on_load_after'] ? +$settings['on_load_after']['size']:1; const $external_class=$settings['external_class'] ? $settings['external_class']:false; const $external_id=$settings['external_id'] ? $settings['external_id']:false; const $show_close_Button=$settings['show_close_Button'] ? $settings['show_close_Button']:false; const $esc_to_exit=$settings['esc_to_exit'] ? $settings['esc_to_exit']:false; const $click_to_exit=$settings['click_to_exit'] ? $settings['click_to_exit']:false; const $mfp_src=$settings['mfp_src'] ? $settings['mfp_src']:false; const $mfp_type=$settings['mfp_type'] ? $settings['mfp_type']:false; const $mfp_button_position=($mfp_type==='image') ? true:false; let $trigger_element=false; $self.init=function(){ if($trigger_type==='on-load'){ $self.onLoadInit() }else if($trigger_type==='on-click'){ $trigger_element=$scope.find('.wdt-popup-box-trigger-item'); $self.onClickInit(); }else if($trigger_type==='external-class'){ $trigger_element=$($external_class); $self.onClickInit(); }else if($trigger_type==='external-id'){ $trigger_element=$($external_id); $self.onClickInit(); }}; $self.onLoadInit=function(){ if($on_load_after===0){ $.removeCookie($module_ref_id, { path: "/" }); } if(!$.cookie($module_ref_id)){ setTimeout(function (){ $.magnificPopup.open({ items: { src: $mfp_src, type: $mfp_type, }, removalDelay: 500, showCloseBtn: $show_close_Button, enableEscapeKey: $esc_to_exit, closeOnBgClick: $click_to_exit, mainClass: $popup_class, closeBtnInside: $mfp_button_position }); if($on_load_after > 0){ $.cookie($module_ref_id, $on_load_after, { expires: $on_load_after, path: "/", }); }else{ $.removeCookie($module_ref_id); }}, $on_load_delay); }}; $self.onClickInit=function(){ $trigger_element.magnificPopup({ items: { src: $mfp_src, type: $mfp_type, }, removalDelay: 500, showCloseBtn: $show_close_Button, enableEscapeKey: $esc_to_exit, closeOnBgClick: $click_to_exit, mainClass: $popup_class, closeBtnInside: $mfp_button_position }); };}; $(window).on('elementor/frontend/init', function (){ elementorFrontend.hooks.addAction('frontend/element_ready/wdt-popup-box.default', wdtPopupBoxWidgetHandler); }); })(jQuery); (function($){ 'use strict'; $(window).on('elementor/frontend/init', function (){ qodefAddonsElementor.init(); qodefAddonsElementorPromoWidgets.init(); } ); var qodefAddonsElementor={ init: function (){ var isEditMode=Boolean(elementorFrontend.isEditMode()); if(isEditMode){ for(var key in qodefAddonsCore.shortcodes){ for(var keyChild in qodefAddonsCore.shortcodes[key]){ qodefAddonsElementor.reInitShortcode(key, keyChild ); }} }}, reInitShortcode: function(key, keyChild){ elementorFrontend.hooks.addAction('frontend/element_ready/' + key + '.default', function(e){ if(typeof qodefAddonsCore.shortcodes[key][keyChild]==='undefined'){ console.log(keyChild); }else if(typeof qodefAddonsCore.shortcodes[key][keyChild].initSlider==='function'&&e.find('.qodef-qi-swiper-container').length){ var $sliders=e.find('.qodef-qi-swiper-container'); if($sliders.length){ $sliders.each(function (){ qodefAddonsCore.shortcodes[key][keyChild].initSlider($(this)); } ); }}else if(typeof qodefAddonsCore.shortcodes[key][keyChild].initItem==='function'&&e.find('.qodef-shortcode').length){ qodefAddonsCore.shortcodes[key][keyChild].initItem(e.find('.qodef-shortcode')); }else{ qodefAddonsCore.shortcodes[key][keyChild].init(); }} ); }, }; var qodefAddonsElementorPromoWidgets={ init: function (){ if(typeof elementor!=='undefined'){ elementor.hooks.addFilter('panel/elements/regionViews', function(panel){ var qodeWidgetsPromoHandler, elementsView=panel.elements.view, categoriesView=panel.categories.view; qodeWidgetsPromoHandler={ className: function (){ var className='elementor-element-wrapper'; if(!this.isEditable()){ className +=' elementor-element--promotion'; if(this.isQodeWidget()){ className +=' qodef-element--promotion'; }} return className; }, isQodeWidget: function (){ if(undefined!==this.model.get('name')){ return 0===this.model.get('name').indexOf('qi_'); }}, getElementObj: function(key){ var widgetObj=elementor.config.promotionWidgets.find(function(widget, index){ if(widget.name==key){ return true; }} ); return widgetObj; }, onMouseDown: function (){ var actionURL=elementor.config.elementPromotionURL.replace('%s', this.model.get('name') ), title=this.model.get('title'), content=sprintf( wp.i18n.__('Use %s widget and dozens more pro features to extend your toolbox and build sites faster and better.', 'qi-addons-for-elementor' ), title ), promotion=elementor.config.promotion.elements; if(this.isQodeWidget()){ var widgetObject=this.getElementObj(this.model.get('name')); if(typeof widgetObject.helpUrl!=='undefined'){ actionURL=widgetObject.helpUrl; } content=sprintf( wp.i18n.__('The %s comes with advanced professional functionalities and an even smoother website-making experience. %s Upgrade Qi Addons for Elementor %s', 'qi-addons-for-elementor' ), title, '', '' ); } elementor.promotion.showDialog({ title: sprintf( wp.i18n.__('%s Widget', 'qi-addons-for-elementor' ), title ), content: content, position: { blockStart: '-7' }, targetElement: this.el, actionButton: { url: actionURL, text: promotion.action_button.text, classes: promotion.action_button.classes||['elementor-button', 'go-pro'] }} ); }}; panel.elements.view=elementsView.extend({ childView: elementsView.prototype.childView.extend(qodeWidgetsPromoHandler) } ); panel.categories.view=categoriesView.extend({ childView: categoriesView.prototype.childView.extend({ childView: categoriesView.prototype.childView.prototype.childView.extend(qodeWidgetsPromoHandler) } ) } ); return panel; } ); }}, };})(jQuery); (function ($){ const wdtSectionsOptionsHandler=function($scope){ const animationEffectInstance=new wdtWidgetsAnimationEffectHandlerInit($scope); animationEffectInstance.init(); }; const wdtWidgetsAnimationEffectHandlerInit=function($scope){ const $self=this, $window=$(window), $sectionId=$scope.data('id'), $editMode=Boolean(elementorFrontend.isEditMode()), $activeBreakpoints=elementorFrontend.config.responsive.activeBreakpoints, $deviceMode=elementorFrontend.getCurrentDeviceMode(); let $activeBreakpointkeys=[]; let $animationEffectSettings=false; let $mouseMoveItemSettings={}; let $scrollItemSettings={}; $self.init=function(){ $self.animationEffectInit(); }; $self.filterObjects=function($settings, $searchKey){ let $settingKeys=Object.keys($settings).filter((key)=> key.includes($searchKey)); let $filteredSettings=$settingKeys.reduce((cur, key)=> { return Object.assign(cur, { [key]: $settings[key] })}, {}); if(Object.keys($filteredSettings).length){ return $filteredSettings; } return false; }; $self.animationEffectInit=function(){ if($editMode){ $animationEffectSettings=$self.generateEditorSettings($sectionId); }else{ $animationEffectSettings=$scope.data('settings')||false; $animationEffectSettings=$self.filterObjects($animationEffectSettings, 'wdt_'); } if(!$animationEffectSettings||$animationEffectSettings['wdt_animation_effect']==='none'||$animationEffectSettings['wdt_animation_effect']===''){ return false; } $self.updateActiveBreakpoints(); $self.generateBgItemsInSections(); if(Object.keys($mouseMoveItemSettings).length){ $self.animationEffectMouseMove(); } if(Object.keys($scrollItemSettings).length){ let img=new Image(); if($animationEffectSettings['wdt_bg_image']['url']!==''){ img.src=$animationEffectSettings['wdt_bg_image']['url']; img.onload=function(){ let $bgCSS={ 'height': this.height+'px' }; $scope.find('.wdt-section-bgeffects-image').css($bgCSS); $self.animationEffectScroll(); }} }}; $self.generateEditorSettings=function($sectionId){ let $editorModels=null, $editorSettings={}; if(!window.elementor.hasOwnProperty('elements')){ return false; } $editorModels=window.elementor.elements.models; if(!$editorModels){ return false; } $.each($editorModels, function(index, obj){ if($sectionId===obj.id){ $editorSettings=obj.attributes.settings.attributes; }}); if(!Object.keys($editorSettings).length){ return false; } return $self.filterObjects($editorSettings, 'wdt_'); }; $self.updateActiveBreakpoints=function(){ $.each($activeBreakpoints, function (key, value){ if('widescreen'===key){ $activeBreakpointkeys.push('desktop'); $activeBreakpointkeys.push(key); }else{ $activeBreakpointkeys.push(key); }}); if(-1===$activeBreakpointkeys.indexOf('widescreen')){ $activeBreakpointkeys.push('desktop'); }}; $self.generateBreakpointwiseBgItems=function($section){ let $bgItems={}; let $wdt_bg_image=($section['wdt_bg_image']&&''!=$section['wdt_bg_image']['url']) ? $section['wdt_bg_image']['url']:''; let $wdt_bg_position=($section['wdt_bg_position']&&''!=$section['wdt_bg_position']) ? $section['wdt_bg_position']:'center center'; let $wdt_bg_size=($section['wdt_bg_size']&&''!=$section['wdt_bg_size']) ? $section['wdt_bg_size']:''; $activeBreakpointkeys.forEach(function(breakpoint){ if('desktop'===breakpoint){ $bgItems[breakpoint]={ 'bgImage':$wdt_bg_image, 'bgPosition':$wdt_bg_position, 'bgSize':$wdt_bg_size };}else{ $bgItems[breakpoint]={ 'bgImage':($section['wdt_bg_image_' + breakpoint]&&''!=$section['wdt_bg_image_' + breakpoint]['url']) ? $section['wdt_bg_image_' + breakpoint]['url']:$wdt_bg_image, 'bgPosition':($section['wdt_bg_position_' + breakpoint]&&''!=$section['wdt_bg_position_' + breakpoint]) ? $section['wdt_bg_position_' + breakpoint]:$wdt_bg_position, 'bgSize':($section['wdt_bg_size_' + breakpoint]&&''!=$section['wdt_bg_size_' + breakpoint]) ? $section['wdt_bg_size_' + breakpoint]:$wdt_bg_size };}}); return $bgItems; }; $self.generateBgItemsInSections=function(){ $('.wdt-section-bgeffects-item', $scope).remove(); const $effectType=$animationEffectSettings['wdt_animation_effect']; let $bgItem=$self.generateBreakpointwiseBgItems($animationEffectSettings); if($effectType==='none'||$effectType===''||!$bgItem[$deviceMode]){ return false; } if(!$scope.hasClass('wdt-section-bgeffects')){ $scope.addClass('wdt-section-bgeffects'); } const $bgImage=$bgItem[$deviceMode].bgImage; const $bgPosition=$bgItem[$deviceMode].bgPosition; const $bgSize=$bgItem[$deviceMode].bgSize; if($effectType==='mouse-move'){ let $layout=$('
').prependTo($scope); $mouseMoveItemSettings=$self.filterObjects($animationEffectSettings, 'wdt_mme_'); $mouseMoveItemSettings['wdt_item']=$layout; }else if($effectType==='scroll'){ let $layout=$('
').prependTo($scope); let $bgCSS={ 'background-image': 'url(' + $bgImage + ')', 'background-position': $bgPosition, 'background-repeat': 'no-repeat', 'background-size': $bgSize }; $('> .wdt-section-bgeffects-image', $layout).css($bgCSS); $scrollItemSettings=$self.filterObjects($animationEffectSettings, 'wdt_sle_'); $scrollItemSettings['wdt_item']=$layout; }}; $self.getMouseMoveResponsiveSettings=function($mouseMoveItem){ let $mouseMoveBreakpointItem={}; $activeBreakpointkeys.forEach(function($breakpoint){ if('desktop'===$breakpoint){ $mouseMoveBreakpointItem[$breakpoint]={ 'speed':($mouseMoveItem['wdt_mme_speed']['size']&&''!=$mouseMoveItem['wdt_mme_speed']['size']) ? $mouseMoveItem['wdt_mme_speed']['size']:0.1, 'depth':($mouseMoveItem['wdt_mme_depth']['size']&&''!=$mouseMoveItem['wdt_mme_depth']['size']) ? $mouseMoveItem['wdt_mme_depth']['size']:1 };}else{ $mouseMoveBreakpointItem[$breakpoint]={ 'speed':($mouseMoveItem['wdt_mme_speed_' + $breakpoint]['size']&&''!=$mouseMoveItem['wdt_mme_speed_' + $breakpoint]['size']) ? $mouseMoveItem['wdt_mme_speed_' + $breakpoint]['size']:$mouseMoveItem['wdt_mme_speed']['size'], 'depth':($mouseMoveItem['wdt_mme_depth_' + $breakpoint]['size']&&''!=$mouseMoveItem['wdt_mme_depth_' + $breakpoint]['size']) ? $mouseMoveItem['wdt_mme_depth_' + $breakpoint]['size']:$mouseMoveItem['wdt_mme_depth']['size'] };}}); return $mouseMoveBreakpointItem; }; $self.animationEffectMouseMove=function(){ let $mouseMoveBreakpointwiseItem=$self.getMouseMoveResponsiveSettings($mouseMoveItemSettings); if(!$mouseMoveBreakpointwiseItem[$deviceMode]){ return false; } const $speed=$mouseMoveBreakpointwiseItem[$deviceMode].speed; const $depth=$mouseMoveBreakpointwiseItem[$deviceMode].depth; const $moveAlong=$mouseMoveItemSettings['wdt_mme_move_along'] ? $mouseMoveItemSettings['wdt_mme_move_along']:'both'; const $invertMovement=$mouseMoveItemSettings['wdt_mme_invert_movement'] ? Boolean($mouseMoveItemSettings['wdt_mme_invert_movement']):false; let $options={}; $scope.find('.wdt-effect-mouse-move-wrapper').attr('data-depth', $depth); if($moveAlong==='x-axis'){ $options['scalarX']=10.0; $options['scalarY']=0.0; } if($moveAlong==='y-axis'){ $options['scalarX']=0.0; $options['scalarY']=10.0; } if($moveAlong==='both'){ $options['scalarX']=10.0; $options['scalarY']=10.0; } $options['frictionX']=$speed; $options['frictionY']=$speed; $options['invertX']=$invertMovement; $options['invertY']=$invertMovement; $parallaxInstance=$scope.parallax($options); }; $self.getScrollResponsiveSettings=function($scrollItem){ let $scrollBreakpointItem={}; let $wdt_sle_parallax_x_depth=($scrollItem['wdt_sle_parallax_x_depth']&&''!=$scrollItem['wdt_sle_parallax_x_depth']['size']) ? $scrollItem['wdt_sle_parallax_x_depth']['size']:50; let $wdt_sle_parallax_y_depth=($scrollItem['wdt_sle_parallax_y_depth']&&''!=$scrollItem['wdt_sle_parallax_y_depth']['size']) ? $scrollItem['wdt_sle_parallax_y_depth']['size']:50; let $wdt_sle_rotate_x_angle=($scrollItem['wdt_sle_rotate_x_angle']&&''!=$scrollItem['wdt_sle_rotate_x_angle']['size']) ? $scrollItem['wdt_sle_rotate_x_angle']['size']:45; let $wdt_sle_rotate_y_angle=($scrollItem['wdt_sle_rotate_y_angle']&&''!=$scrollItem['wdt_sle_rotate_y_angle']['size']) ? $scrollItem['wdt_sle_rotate_y_angle']['size']:45; let $wdt_sle_rotate_z_angle=($scrollItem['wdt_sle_rotate_z_angle']&&''!=$scrollItem['wdt_sle_rotate_z_angle']['size']) ? $scrollItem['wdt_sle_rotate_z_angle']['size']:45; let $wdt_sle_scale_value=($scrollItem['wdt_sle_scale_value']&&''!=$scrollItem['wdt_sle_scale_value']['size']) ? $scrollItem['wdt_sle_scale_value']['size']:1; let $wdt_sle_blur_value=($scrollItem['wdt_sle_blur_value']&&''!=$scrollItem['wdt_sle_blur_value']['size']) ? $scrollItem['wdt_sle_blur_value']['size']:0; let $wdt_sle_opacity_value=($scrollItem['wdt_sle_opacity_value']&&''!=$scrollItem['wdt_sle_opacity_value']['size']) ? $scrollItem['wdt_sle_opacity_value']['size']:1; $activeBreakpointkeys.forEach(function($breakpoint){ if('desktop'===$breakpoint){ $scrollBreakpointItem[$breakpoint]={ 'parallaxDepthX': $wdt_sle_parallax_x_depth, 'parallaxDepthY': $wdt_sle_parallax_y_depth, 'rotateAngleX':$wdt_sle_rotate_x_angle, 'rotateAngleY':$wdt_sle_rotate_y_angle, 'rotateAngleZ':$wdt_sle_rotate_z_angle, 'scaleValue':$wdt_sle_scale_value, 'blurValue':$wdt_sle_blur_value, 'opacityValue':$wdt_sle_opacity_value };}else{ $scrollBreakpointItem[$breakpoint]={ 'parallaxDepthX':($scrollItem['wdt_sle_parallax_x_depth_' + $breakpoint]&&''!=$scrollItem['wdt_sle_parallax_x_depth_' + $breakpoint]['size']) ? $scrollItem['wdt_sle_parallax_x_depth_' + $breakpoint]['size']:$wdt_sle_parallax_x_depth, 'parallaxDepthY':($scrollItem['wdt_sle_parallax_y_depth_' + $breakpoint]&&''!=$scrollItem['wdt_sle_parallax_y_depth_' + $breakpoint]['size']) ? $scrollItem['wdt_sle_parallax_y_depth_' + $breakpoint]['size']:$wdt_sle_parallax_y_depth, 'rotateAngleX':($scrollItem['wdt_sle_rotate_x_angle_' + $breakpoint]&&''!=$scrollItem['wdt_sle_rotate_x_angle_' + $breakpoint]['size']) ? $scrollItem['wdt_sle_rotate_x_angle_' + $breakpoint]['size']:$wdt_sle_rotate_x_angle, 'rotateAngleY':($scrollItem['wdt_sle_rotate_y_angle_' + $breakpoint]&&''!=$scrollItem['wdt_sle_rotate_y_angle_' + $breakpoint]['size']) ? $scrollItem['wdt_sle_rotate_y_angle_' + $breakpoint]['size']:$wdt_sle_rotate_y_angle, 'rotateAngleZ':($scrollItem['wdt_sle_rotate_z_angle_' + $breakpoint]&&''!=$scrollItem['wdt_sle_rotate_z_angle_' + $breakpoint]['size']) ? $scrollItem['wdt_sle_rotate_z_angle_' + $breakpoint]['size']:$wdt_sle_rotate_z_angle, 'scaleValue':($scrollItem['wdt_sle_scale_value_' + $breakpoint]&&''!=$scrollItem['wdt_sle_scale_value_' + $breakpoint]['size']) ? $scrollItem['wdt_sle_scale_value_' + $breakpoint]['size']:$wdt_sle_scale_value, 'blurValue':($scrollItem['wdt_sle_blur_value_' + $breakpoint]&&''!=$scrollItem['wdt_sle_blur_value_' + $breakpoint]['size']) ? $scrollItem['wdt_sle_blur_value_' + $breakpoint]['size']:$wdt_sle_blur_value, 'opacityValue':($scrollItem['wdt_sle_opacity_value' + $breakpoint]&&''!=$scrollItem['wdt_sle_opacity_value' + $breakpoint]['size']) ? $scrollItem['wdt_sle_opacity_value' + $breakpoint]['size']:$wdt_sle_opacity_value, };}}); return $scrollBreakpointItem; }; $self.animationEffectScroll=function(){ let $scrollBreakpointwiseItem=$self.getScrollResponsiveSettings($scrollItemSettings); if(!$scrollBreakpointwiseItem[$deviceMode]){ return false; } const $parallaxDirectionX=$scrollItemSettings['wdt_sle_parallax_x_direction'] ? Boolean($scrollItemSettings['wdt_sle_parallax_x_direction']):false; const $parallaxDepthX=$scrollBreakpointwiseItem[$deviceMode].parallaxDepthX; const $parallaxDirectionY=$scrollItemSettings['wdt_sle_parallax_y_direction'] ? Boolean($scrollItemSettings['wdt_sle_parallax_y_direction']):false; const $parallaxDepthY=$scrollBreakpointwiseItem[$deviceMode].parallaxDepthY; const $rotateX=$scrollItemSettings['wdt_sle_rotate_x'] ? Boolean($scrollItemSettings['wdt_sle_rotate_x']):false; const $rotateAngleX=$scrollBreakpointwiseItem[$deviceMode].rotateAngleX; const $rotateY=$scrollItemSettings['wdt_sle_rotate_y'] ? Boolean($scrollItemSettings['wdt_sle_rotate_y']):false; const $rotateAngleY=$scrollBreakpointwiseItem[$deviceMode].rotateAngleY; const $rotateZ=$scrollItemSettings['wdt_sle_rotate_z'] ? Boolean($scrollItemSettings['wdt_sle_rotate_z']):false; const $rotateAngleZ=$scrollBreakpointwiseItem[$deviceMode].rotateAngleZ; const $scale=$scrollItemSettings['wdt_sle_scale'] ? Boolean($scrollItemSettings['wdt_sle_scale']):false; const $scaleValue=$scrollBreakpointwiseItem[$deviceMode].scaleValue; const $blur=$scrollItemSettings['wdt_sle_blur'] ? Boolean($scrollItemSettings['wdt_sle_blur']):false; const $blurValue=$scrollBreakpointwiseItem[$deviceMode].blurValue; const $opacity=$scrollItemSettings['wdt_sle_opacity'] ? Boolean($scrollItemSettings['wdt_sle_opacity']):false; const $opacityValue=$scrollBreakpointwiseItem[$deviceMode].opacityValue; const $itemTop=+$scope.find('.wdt-effect-scroll-wrapper').offset().top; const $itemHeight=+$scope.find('.wdt-effect-scroll-wrapper .wdt-section-bgeffects-image').height(); const $toScroll=($itemTop + $itemHeight); const $windowHeight=$window.height(); const $fromScroll=($itemTop - $windowHeight); if($parallaxDirectionX){ $scope.find('.wdt-effect-scroll-wrapper .wdt-section-bgeffects-image').css({ 'left': '-'+$parallaxDepthX+'px' }) }else if($parallaxDirectionY){ $scope.find('.wdt-effect-scroll-wrapper .wdt-section-bgeffects-image').css({ 'top': '-'+$parallaxDepthY+'px' }) } let $options={'distance': 10, 'smoothness': 30, 'from-scroll': $fromScroll, 'to-scroll': $toScroll}; if($parallaxDirectionX){ $options['x']=$parallaxDepthX; } if($parallaxDirectionY){ $options['y']=$parallaxDepthY; } if($rotateX){ $options['rotateX']=$rotateAngleX; } if($rotateY){ $options['rotateY']=$rotateAngleY; } if($rotateZ){ $options['rotateZ']=$rotateAngleZ; } if($scale){ $options['scale']=$scaleValue; } if($blur){ $options['blur']=$blurValue; } if($opacity){ $options['opacity']=$opacityValue; } $scope.find('.wdt-effect-scroll-wrapper').attr('data-parallax', JSON.stringify($options)); };}; $(window).on('elementor/frontend/init', function (){ elementorFrontend.hooks.addAction('frontend/element_ready/section', wdtSectionsOptionsHandler); }); })(jQuery); !function(a){({showLogs:!1,round:1e3,init:function(){if(this._log("init"),this._inited)return this._log("Already Inited"),void(this._inited=!0);this._requestAnimationFrame=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(a,t){window.setTimeout(a,1e3/60)},this._onScroll(!0)},_inited:!1,_properties:["x","y","z","rotateX","rotateY","rotateZ","scaleX","scaleY","scaleZ","scale","blur","opacity"],_requestAnimationFrame:null,_log:function(a){this.showLogs&&console.log("Parallax Scroll / "+a)},_onScroll:function(t){var e=a(document).scrollTop(),l=a(window).height();this._log("onScroll "+e),a("[data-parallax]").each(a.proxy(function(n,r){var s=a(r),i=[],o=!1,c=s.data("style");null==c&&(c=s.attr("style")||"",s.data("style",c));var u,d=[s.data("parallax")];for(u=2;s.data("parallax"+u);u++)d.push(s.data("parallax"+u));var m=d.length;for(u=0;uh&&("back"==s.data("sens")?(_=1,s.data("sens","go")):_++),A0&&_<=g){var u=e;"back"==s.data("sens")&&(u=l,l=-l,f=y,g=x),c=a.easing[f](null,_,u,l,g)}(c=Math.ceil(c*this.round)/this.round)==n&&r==l&&(c=l),i[t]||(i[t]=0),i[t]+=c,n!=i[t]&&(s.data("_"+t,i[t]),o=!0)}},this))}if(o){if(null!=i.z){var X=p.perspective;null==X&&(X=800);var Y=s.parent();Y.data("style")||Y.data("style",Y.attr("style")||""),Y.attr("style","perspective:"+X+"px; -webkit-perspective:"+X+"px; "+Y.data("style"))}null==i.scaleX&&(i.scaleX=1),null==i.scaleY&&(i.scaleY=1),null==i.scaleZ&&(i.scaleZ=1),null!=i.scale&&(i.scaleX*=i.scale,i.scaleY*=i.scale,i.scaleZ*=i.scale);var Z="translate3d("+(i.x?i.x:0)+"px, "+(i.y?i.y:0)+"px, "+(i.z?i.z:0)+"px)"+" "+("rotateX("+(i.rotateX?i.rotateX:0)+"deg) rotateY("+(i.rotateY?i.rotateY:0)+"deg) rotateZ("+(i.rotateZ?i.rotateZ:0)+"deg)")+" "+("scaleX("+i.scaleX+") scaleY("+i.scaleY+") scaleZ("+i.scaleZ+")")+";";this._log(Z);var q="";if(null!=i.blur){var F="blur("+i.blur+"px);";q="filter:"+F+" -webkit-filter:"+F}var k="";null!=i.opacity&&(k="opacity:"+i.opacity+";"),s.attr("style","transform:"+Z+" -webkit-transform:"+Z+" "+q+" "+k+" "+c)}},this)),window.requestAnimationFrame?window.requestAnimationFrame(a.proxy(this._onScroll,this,!1)):this._requestAnimationFrame(a.proxy(this._onScroll,this,!1))}}).init()}(jQuery); !function(r,u,d,m){"use strict";var o="parallax",n={relativeInput:!1,clipRelativeInput:!1,calibrationThreshold:100,calibrationDelay:500,supportDelay:500,calibrateX:!1,calibrateY:!0,invertX:!0,invertY:!0,limitX:!1,limitY:!1,scalarX:10,scalarY:10,frictionX:.1,frictionY:.1,originX:.5,originY:.5,pointerEvents:!0,precision:1};function a(t,i){this.element=t,this.$context=r(t).data("api",this),this.$layers=this.$context.find(".layer");var e={calibrateX:this.$context.data("calibrate-x")||null,calibrateY:this.$context.data("calibrate-y")||null,invertX:this.$context.data("invert-x")||null,invertY:this.$context.data("invert-y")||null,limitX:parseFloat(this.$context.data("limit-x"))||null,limitY:parseFloat(this.$context.data("limit-y"))||null,scalarX:parseFloat(this.$context.data("scalar-x"))||null,scalarY:parseFloat(this.$context.data("scalar-y"))||null,frictionX:parseFloat(this.$context.data("friction-x"))||null,frictionY:parseFloat(this.$context.data("friction-y"))||null,originX:parseFloat(this.$context.data("origin-x"))||null,originY:parseFloat(this.$context.data("origin-y"))||null,pointerEvents:this.$context.data("pointer-events")||!0,precision:parseFloat(this.$context.data("precision"))||1};for(var s in e)null===e[s]&&delete e[s];r.extend(this,n,i,e),this.calibrationTimer=null,this.calibrationFlag=!0,this.enabled=!1,this.depthsX=[],this.depthsY=[],this.raf=null,this.bounds=null,this.ex=0,this.ey=0,this.ew=0,this.eh=0,this.ecx=0,this.ecy=0,this.erx=0,this.ery=0,this.cx=0,this.cy=0,this.ix=0,this.iy=0,this.mx=0,this.my=0,this.vx=0,this.vy=0,this.onMouseMove=this.onMouseMove.bind(this),this.onDeviceOrientation=this.onDeviceOrientation.bind(this),this.onOrientationTimer=this.onOrientationTimer.bind(this),this.onCalibrationTimer=this.onCalibrationTimer.bind(this),this.onAnimationFrame=this.onAnimationFrame.bind(this),this.onWindowResize=this.onWindowResize.bind(this),this.initialise()}a.prototype.transformSupport=function(t){for(var i,e,s,o,n=d.createElement("div"),r=!1,a=null,h=!1,l=null,p=null,c=0,y=this.vendors.length;cthis.calibrationThreshold||Math.abs(i)>this.calibrationThreshold)&&this.queueCalibration(0),this.portrait?(this.mx=this.calibrateX?i:this.iy,this.my=this.calibrateY?t:this.ix):(this.mx=this.calibrateX?t:this.ix,this.my=this.calibrateY?i:this.iy),this.mx*=this.ew*(this.scalarX/100),this.my*=this.eh*(this.scalarY/100),isNaN(parseFloat(this.limitX))||(this.mx=this.clamp(this.mx,-this.limitX,this.limitX)),isNaN(parseFloat(this.limitY))||(this.my=this.clamp(this.my,-this.limitY,this.limitY)),this.vx+=(this.mx-this.vx)*this.frictionX,this.vy+=(this.my-this.vy)*this.frictionY;for(var e=0,s=this.$layers.length;eu.innerWidth,this.portrait!==s&&(this.portrait=s,this.calibrationFlag=!0),this.calibrationFlag&&(this.calibrationFlag=!1,this.cx=i,this.cy=e),this.ix=i,this.iy=e)},a.prototype.onMouseMove=function(t){var i=t.clientX,e=t.clientY;!this.orientationSupport&&this.relativeInput?(this.clipRelativeInput&&(i=Math.max(i,this.ex),i=Math.min(i,this.ex+this.ew),e=Math.max(e,this.ey),e=Math.min(e,this.ey+this.eh)),this.ix=(i-this.ex-this.ecx)/this.erx,this.iy=(e-this.ey-this.ecy)/this.ery):(this.ix=(i-this.wcx)/this.wrx,this.iy=(e-this.wcy)/this.wry)};var h={enable:a.prototype.enable,disable:a.prototype.disable,updateLayers:a.prototype.updateLayers,calibrate:a.prototype.calibrate,friction:a.prototype.friction,invert:a.prototype.invert,scalar:a.prototype.scalar,limit:a.prototype.limit,origin:a.prototype.origin};r.fn[o]=function(e){var s=arguments;return this.each(function(){var t=r(this),i=t.data(o);i||(i=new a(this,e),t.data(o,i)),h[e]&&i[e].apply(i,Array.prototype.slice.call(s,1))})}}(window.jQuery||window.Zepto,window,document); (function ($){ const wdtWidgetsOptionsHandler=function($scope){ const animationEffectInstance=new wdtWidgetsAnimationEffectHandlerInit($scope); animationEffectInstance.init(); const inviewInstance=new wdtWidgetsInViewHandlerInit($scope); inviewInstance.init(); }; const wdtWidgetsAnimationEffectHandlerInit=function($scope){ const $self=this, $window=$(window), $widgetId=$scope.data('id'), $editMode=Boolean(elementorFrontend.isEditMode()), $activeBreakpoints=elementorFrontend.config.responsive.activeBreakpoints, $deviceMode=elementorFrontend.getCurrentDeviceMode(); let $parallaxInstance; let $activeBreakpointkeys=[]; let $animationEffectSettings=false; let $animationEffectBreakpointSettings=[]; let $autoMoveElement; $self.init=function(){ $self.animationEffectInit(); }; $self.animationEffectInit=function(){ if($editMode){ $animationEffectSettings=$self.generateEditorSettings($widgetId); }else{ $animationEffectSettings=$scope.data('settings')||false; $animationEffectSettings=(false!==$animationEffectSettings) ? $animationEffectSettings:false; } if(!$animationEffectSettings||$animationEffectSettings['wdt_animation_effect']==='none'){ return false; } $self.updateActiveBreakpoints(); if($animationEffectSettings['wdt_animation_effect']==='mouse-move'){ $self.animationEffectMouseMove(); } if($animationEffectSettings['wdt_animation_effect']==='scroll'){ $self.animationEffectScroll(); } if($animationEffectSettings['wdt_animation_effect']==='auto-movement'){ $self.animationEffectAutoMovement(); } if($animationEffectSettings['wdt_animation_effect']==='marquee'){ $self.animationEffectMarquee(); }}; $self.generateEditorSettings=function($widgetId){ let $editorModels=null; let $editorSettings={}; if(!window.elementor.hasOwnProperty('elements')){ return false; } $editorModels=window.elementor.elements.models; if(!$editorModels){ return false; } $.each($editorModels, function(index, obj){ $.each(obj.attributes.elements.models, function(index, obj){ $.each(obj.attributes.elements.models, function(index, obj){ if($widgetId===obj.id){ $editorSettings=obj.attributes.settings.attributes; }}); }); }); let $wdtEditorKeys=Object.keys($editorSettings).filter((key)=> key.includes('wdt')); let $wdtEditorSettings=$wdtEditorKeys.reduce((cur, key)=> { return Object.assign(cur, { [key]: $editorSettings[key] })}, {}); let $customDirections=[]; if($wdtEditorSettings['wdt_ame_custom_directions']){ $.each($wdtEditorSettings['wdt_ame_custom_directions'].models, function(index, obj){ let $customDirection=obj.attributes; $customDirections.push($customDirection); }); } $wdtEditorSettings['wdt_ame_custom_directions']=$customDirections; return $wdtEditorSettings; }; $self.updateActiveBreakpoints=function(){ $.each($activeBreakpoints, function (key, value){ if('widescreen'===key){ $activeBreakpointkeys.push('desktop'); $activeBreakpointkeys.push(key); }else{ $activeBreakpointkeys.push(key); }}); if(-1===$activeBreakpointkeys.indexOf('widescreen')){ $activeBreakpointkeys.push('desktop'); }}; $self.getMouseMoveResponsiveSettings=function(){ $activeBreakpointkeys.forEach(function($breakpoint){ if('desktop'===$breakpoint){ $animationEffectBreakpointSettings[$breakpoint]={ 'speed':($animationEffectSettings['wdt_mme_speed']['size']&&''!=$animationEffectSettings['wdt_mme_speed']['size']) ? $animationEffectSettings['wdt_mme_speed']['size']:0.1, 'depth':($animationEffectSettings['wdt_mme_depth']['size']&&''!=$animationEffectSettings['wdt_mme_depth']['size']) ? $animationEffectSettings['wdt_mme_depth']['size']:1 };}else{ $animationEffectBreakpointSettings[$breakpoint]={ 'speed':($animationEffectSettings['wdt_mme_speed_' + $breakpoint]['size']&&''!=$animationEffectSettings['wdt_mme_speed_' + $breakpoint]['size']) ? $animationEffectSettings['wdt_mme_speed_' + $breakpoint]['size']:$animationEffectSettings['wdt_mme_speed']['size'], 'depth':($animationEffectSettings['wdt_mme_depth_' + $breakpoint]['size']&&''!=$animationEffectSettings['wdt_mme_depth_' + $breakpoint]['size']) ? $animationEffectSettings['wdt_mme_depth_' + $breakpoint]['size']:$animationEffectSettings['wdt_mme_depth']['size'] };}}); }; $self.animationEffectMouseMove=function(){ $self.getMouseMoveResponsiveSettings(); if(!$animationEffectBreakpointSettings[$deviceMode]){ return false; } const $speed=$animationEffectBreakpointSettings[$deviceMode].speed; const $depth=$animationEffectBreakpointSettings[$deviceMode].depth; const $moveAlong=$animationEffectSettings['wdt_mme_move_along'] ? $animationEffectSettings['wdt_mme_move_along']:'both'; const $invertMovement=$animationEffectSettings['wdt_mme_invert_movement'] ? Boolean($animationEffectSettings['wdt_mme_invert_movement']):false; let $options={}; $scope.find('.elementor-widget-container').wrapInner('
') $scope.find('.wdt-effect-mouse-move-wrapper').attr('data-depth', $depth); if($moveAlong==='x-axis'){ $options['scalarX']=10.0; $options['scalarY']=0.0; } if($moveAlong==='y-axis'){ $options['scalarX']=0.0; $options['scalarY']=10.0; } if($moveAlong==='both'){ $options['scalarX']=10.0; $options['scalarY']=10.0; } $options['frictionX']=$speed; $options['frictionY']=$speed; $options['invertX']=$invertMovement; $options['invertY']=$invertMovement; $parallaxInstance=$scope.parallax($options); }; $self.getScrollResponsiveSettings=function(){ let $wdt_sle_parallax_x_depth=($animationEffectSettings['wdt_sle_parallax_x_depth']&&''!=$animationEffectSettings['wdt_sle_parallax_x_depth']['size']) ? $animationEffectSettings['wdt_sle_parallax_x_depth']['size']:50; let $wdt_sle_parallax_y_depth=($animationEffectSettings['wdt_sle_parallax_y_depth']&&''!=$animationEffectSettings['wdt_sle_parallax_y_depth']['size']) ? $animationEffectSettings['wdt_sle_parallax_y_depth']['size']:50; let $wdt_sle_rotate_x_angle=($animationEffectSettings['wdt_sle_rotate_x_angle']&&''!=$animationEffectSettings['wdt_sle_rotate_x_angle']['size']) ? $animationEffectSettings['wdt_sle_rotate_x_angle']['size']:45; let $wdt_sle_rotate_y_angle=($animationEffectSettings['wdt_sle_rotate_y_angle']&&''!=$animationEffectSettings['wdt_sle_rotate_y_angle']['size']) ? $animationEffectSettings['wdt_sle_rotate_y_angle']['size']:45; let $wdt_sle_rotate_z_angle=($animationEffectSettings['wdt_sle_rotate_z_angle']&&''!=$animationEffectSettings['wdt_sle_rotate_z_angle']['size']) ? $animationEffectSettings['wdt_sle_rotate_z_angle']['size']:45; let $wdt_sle_scale_value=($animationEffectSettings['wdt_sle_scale_value']&&''!=$animationEffectSettings['wdt_sle_scale_value']['size']) ? $animationEffectSettings['wdt_sle_scale_value']['size']:1; let $wdt_sle_blur_value=($animationEffectSettings['wdt_sle_blur_value']&&''!=$animationEffectSettings['wdt_sle_blur_value']['size']) ? $animationEffectSettings['wdt_sle_blur_value']['size']:0; let $wdt_sle_opacity_value=($animationEffectSettings['wdt_sle_opacity_value']&&''!=$animationEffectSettings['wdt_sle_opacity_value']['size']) ? $animationEffectSettings['wdt_sle_opacity_value']['size']:1; $activeBreakpointkeys.forEach(function($breakpoint){ if('desktop'===$breakpoint){ $animationEffectBreakpointSettings[$breakpoint]={ 'parallaxDepthX': $wdt_sle_parallax_x_depth, 'parallaxDepthY': $wdt_sle_parallax_y_depth, 'rotateAngleX':$wdt_sle_rotate_x_angle, 'rotateAngleY':$wdt_sle_rotate_y_angle, 'rotateAngleZ':$wdt_sle_rotate_z_angle, 'scaleValue':$wdt_sle_scale_value, 'blurValue':$wdt_sle_blur_value, 'opacityValue':$wdt_sle_opacity_value };}else{ $animationEffectBreakpointSettings[$breakpoint]={ 'parallaxDepthX':($animationEffectSettings['wdt_sle_parallax_x_depth_' + $breakpoint]&&''!=$animationEffectSettings['wdt_sle_parallax_x_depth_' + $breakpoint]['size']) ? $animationEffectSettings['wdt_sle_parallax_x_depth_' + $breakpoint]['size']:$wdt_sle_parallax_x_depth, 'parallaxDepthY':($animationEffectSettings['wdt_sle_parallax_y_depth_' + $breakpoint]&&''!=$animationEffectSettings['wdt_sle_parallax_y_depth_' + $breakpoint]['size']) ? $animationEffectSettings['wdt_sle_parallax_y_depth_' + $breakpoint]['size']:$wdt_sle_parallax_y_depth, 'rotateAngleX':($animationEffectSettings['wdt_sle_rotate_x_angle_' + $breakpoint]&&''!=$animationEffectSettings['wdt_sle_rotate_x_angle_' + $breakpoint]['size']) ? $animationEffectSettings['wdt_sle_rotate_x_angle_' + $breakpoint]['size']:$wdt_sle_rotate_x_angle, 'rotateAngleY':($animationEffectSettings['wdt_sle_rotate_y_angle_' + $breakpoint]&&''!=$animationEffectSettings['wdt_sle_rotate_y_angle_' + $breakpoint]['size']) ? $animationEffectSettings['wdt_sle_rotate_y_angle_' + $breakpoint]['size']:$wdt_sle_rotate_y_angle, 'rotateAngleZ':($animationEffectSettings['wdt_sle_rotate_z_angle_' + $breakpoint]&&''!=$animationEffectSettings['wdt_sle_rotate_z_angle_' + $breakpoint]['size']) ? $animationEffectSettings['wdt_sle_rotate_z_angle_' + $breakpoint]['size']:$wdt_sle_rotate_z_angle, 'scaleValue':($animationEffectSettings['wdt_sle_scale_value_' + $breakpoint]&&''!=$animationEffectSettings['wdt_sle_scale_value_' + $breakpoint]['size']) ? $animationEffectSettings['wdt_sle_scale_value_' + $breakpoint]['size']:$wdt_sle_scale_value, 'blurValue':($animationEffectSettings['wdt_sle_blur_value_' + $breakpoint]&&''!=$animationEffectSettings['wdt_sle_blur_value_' + $breakpoint]['size']) ? $animationEffectSettings['wdt_sle_blur_value_' + $breakpoint]['size']:$wdt_sle_blur_value, 'opacityValue':($animationEffectSettings['wdt_sle_opacity_value' + $breakpoint]&&''!=$animationEffectSettings['wdt_sle_opacity_value' + $breakpoint]['size']) ? $animationEffectSettings['wdt_sle_opacity_value' + $breakpoint]['size']:$wdt_sle_opacity_value, };}}); }; $self.animationEffectScroll=function(){ $self.getScrollResponsiveSettings(); if(!$animationEffectBreakpointSettings[$deviceMode]){ return false; } $scope.find('.elementor-widget-container').wrapInner('
') const $parallaxDirectionX=$animationEffectSettings['wdt_sle_parallax_x_direction'] ? Boolean($animationEffectSettings['wdt_sle_parallax_x_direction']):false; const $parallaxDepthX=$animationEffectBreakpointSettings[$deviceMode].parallaxDepthX; const $parallaxDirectionY=$animationEffectSettings['wdt_sle_parallax_y_direction'] ? Boolean($animationEffectSettings['wdt_sle_parallax_y_direction']):false; const $parallaxDepthY=$animationEffectBreakpointSettings[$deviceMode].parallaxDepthY; const $rotateX=$animationEffectSettings['wdt_sle_rotate_x'] ? Boolean($animationEffectSettings['wdt_sle_rotate_x']):false; const $rotateAngleX=$animationEffectBreakpointSettings[$deviceMode].rotateAngleX; const $rotateY=$animationEffectSettings['wdt_sle_rotate_y'] ? Boolean($animationEffectSettings['wdt_sle_rotate_y']):false; const $rotateAngleY=$animationEffectBreakpointSettings[$deviceMode].rotateAngleY; const $rotateZ=$animationEffectSettings['wdt_sle_rotate_z'] ? Boolean($animationEffectSettings['wdt_sle_rotate_z']):false; const $rotateAngleZ=$animationEffectBreakpointSettings[$deviceMode].rotateAngleZ; const $scale=$animationEffectSettings['wdt_sle_scale'] ? Boolean($animationEffectSettings['wdt_sle_scale']):false; const $scaleValue=$animationEffectBreakpointSettings[$deviceMode].scaleValue; const $blur=$animationEffectSettings['wdt_sle_blur'] ? Boolean($animationEffectSettings['wdt_sle_blur']):false; const $blurValue=$animationEffectBreakpointSettings[$deviceMode].blurValue; const $opacity=$animationEffectSettings['wdt_sle_opacity'] ? Boolean($animationEffectSettings['wdt_sle_opacity']):false; const $opacityValue=$animationEffectBreakpointSettings[$deviceMode].opacityValue; const $itemTop=+$scope.find('.wdt-effect-scroll-wrapper').offset().top; const $itemHeight=+$scope.find('.wdt-effect-scroll-wrapper').height(); const $toScroll=($itemTop + $itemHeight); const $windowHeight=$window.height(); const $fromScroll=($itemTop - $windowHeight); let $options={'distance': 10, 'smoothness': 30, 'from-scroll': $fromScroll, 'to-scroll': $toScroll}; if($parallaxDirectionX){ $options['x']=$parallaxDepthX; } if($parallaxDirectionY){ $options['y']=$parallaxDepthY; } if($rotateX){ $options['rotateX']=$rotateAngleX; } if($rotateY){ $options['rotateY']=$rotateAngleY; } if($rotateZ){ $options['rotateZ']=$rotateAngleZ; } if($scale){ $options['scale']=$scaleValue; } if($blur){ $options['blur']=$blurValue; } if($opacity){ $options['opacity']=$opacityValue; } $scope.find('.wdt-effect-scroll-wrapper').attr('data-parallax', JSON.stringify($options)); }; $self.autoMovementOnIntersect=function(entries, $observer){ entries.forEach((entry)=> { if(entry.isIntersecting){ $autoMoveElement.play(); }else{ $autoMoveElement.pause(); }}); } $self.generateResponsiveRandomPoints=function($direction){ let $reponsiveRandoms={}; let $wdt_x_depth=($direction['wdt_x_depth']&&''!=$direction['wdt_x_depth']['size']) ? $direction['wdt_x_depth']['size']:0; let $wdt_y_depth=($direction['wdt_y_depth']&&''!=$direction['wdt_y_depth']['size']) ? $direction['wdt_y_depth']['size']:0; let $wdt_rotate_angle=($direction['wdt_rotate_angle']&&''!=$direction['wdt_rotate_angle']['size']) ? $direction['wdt_rotate_angle']['size']:0; let $wdt_scale_value=($direction['wdt_scale_value']&&''!=$direction['wdt_scale_value']['size']) ? $direction['wdt_scale_value']['size']:1; let $wdt_blur_value=($direction['wdt_blur_value']&&''!=$direction['wdt_blur_value']['size']) ? $direction['wdt_blur_value']['size']:0; let $wdt_opacity_value=($direction['wdt_opacity_value']&&''!=$direction['wdt_opacity_value']['size']) ? $direction['wdt_opacity_value']['size']:1; $activeBreakpointkeys.forEach(function($breakpoint){ if('desktop'===$breakpoint){ $reponsiveRandoms[$breakpoint]={ 'depthX':$wdt_x_depth, 'depthY':$wdt_y_depth, 'rotateAngle':$wdt_rotate_angle, 'scaleValue':$wdt_scale_value, 'blurValue':$wdt_blur_value, 'opacityValue': $wdt_opacity_value };}else{ $reponsiveRandoms[$breakpoint]={ 'depthX':($direction['wdt_x_depth_' + $breakpoint]&&''!=$direction['wdt_x_depth_' + $breakpoint]['size']) ? $direction['wdt_x_depth_' + $breakpoint]['size']:$wdt_x_depth, 'depthY':($direction['wdt_y_depth_' + $breakpoint]&&''!=$direction['wdt_y_depth_' + $breakpoint]['size']) ? $direction['wdt_y_depth_' + $breakpoint]['size']:$wdt_y_depth, 'rotateAngle':($direction['wdt_rotate_angle_' + $breakpoint]&&''!=$direction['wdt_rotate_angle_' + $breakpoint]['size']) ? $direction['wdt_rotate_angle_' + $breakpoint]['size']:$wdt_rotate_angle, 'scaleValue':($direction['wdt_scale_value_' + $breakpoint]&&''!=$direction['wdt_scale_value_' + $breakpoint]['size']) ? $direction['wdt_scale_value_' + $breakpoint]['size']:$wdt_scale_value, 'blurValue':($direction['wdt_blur_value_' + $breakpoint]&&''!=$direction['wdt_blur_value_' + $breakpoint]['size']) ? $direction['wdt_blur_value_' + $breakpoint]['size']:$wdt_blur_value, 'opacityValue':($direction['wdt_opacity_value' + $breakpoint]&&''!=$direction['wdt_opacity_value' + $breakpoint]['size']) ? $direction['wdt_opacity_value' + $breakpoint]['size']:$wdt_opacity_value, };}}); return $reponsiveRandoms; }; $self.generateRandomPoints=function($ameCustomDirections){ let $points=[]; $ameCustomDirections.forEach(($direction)=> { let $unitPoint={}; const $responsiveDirections=$self.generateResponsiveRandomPoints($direction); $unitPoint={ transform: '' }; const $xDirection=$direction['wdt_x_direction'] ? Boolean($direction['wdt_x_direction']):false; const $depthX=$responsiveDirections[$deviceMode].depthX; const $yDirection=$direction['wdt_y_direction'] ? Boolean($direction['wdt_y_direction']):false; const $depthY=$responsiveDirections[$deviceMode].depthY; const $rotate=$direction['wdt_rotate'] ? Boolean($direction['wdt_rotate']):false; const $rotateAngle=$responsiveDirections[$deviceMode].rotateAngle; const $scale=$direction['wdt_scale'] ? Boolean($direction['wdt_scale']):false; const $scaleValue=$responsiveDirections[$deviceMode].scaleValue; if($xDirection){ $unitPoint['transform'] +='translateX('+$depthX+'px) '; } if($yDirection){ $unitPoint['transform'] +='translateY('+$depthY+'px) '; } if($rotate){ $unitPoint['transform'] +='rotate('+$rotateAngle+'deg) '; } if($scale){ $unitPoint['transform'] +='scale('+$scaleValue+') '; } $unitPoint['transform']=$.trim($unitPoint['transform']) $unitPoint['opacity']=0.2; const $blur=$direction['wdt_blur'] ? Boolean($direction['wdt_blur']):false; const $blurValue=$responsiveDirections[$deviceMode].blurValue; if($blur){ $unitPoint['filter']='blur('+$blurValue+'px)'; } const $opacity=$direction['wdt_opacity'] ? Boolean($direction['wdt_opacity']):false; const $opacityValue=$responsiveDirections[$deviceMode].opacityValue; if($opacity){ $unitPoint['opacity']=+$opacityValue; } if($unitPoint){ $points.push($unitPoint); }}); return $points; } $self.animationEffectAutoMovement=function(){ $scope.find('.elementor-widget-container').wrapInner('
') let $autoMoveElementItem=$scope.find('.wdt-effect-auto-movement-wrapper')[0]; let $ameDirection=$animationEffectSettings['wdt_ame_direction']; let $ameDuration=$animationEffectSettings['wdt_ame_duration']['size'] ? Math.ceil($animationEffectSettings['wdt_ame_duration']['size']*1500):10000; let $ameIteration=($animationEffectSettings['wdt_ame_iteration']==='infinity') ? Infinity:1; let $boundTo=$animationEffectSettings['wdt_bound_to'] ? $animationEffectSettings['wdt_bound_to']:'section'; let $boundToElement=($boundTo==='section') ? $scope.parents('.elementor-section'):$scope.parents('.elementor-column'); let $itemWidth=+$scope.find('.wdt-effect-auto-movement-wrapper').width(); let $sectionWidth=+$boundToElement.width(); let $sectionItemWidth=+$sectionWidth + +$itemWidth; let $itemHeight=+$scope.find('.wdt-effect-auto-movement-wrapper').height(); let $sectionHeight=+$boundToElement.height(); let $sectionItemHeight=+$sectionHeight + +$itemHeight; if($ameDirection==='left-to-right'){ $autoMoveElement=$autoMoveElementItem.animate([ { transform: 'translateX(-'+$itemWidth+'px)' }, { transform: 'translateX('+$sectionWidth+'px)' } ], { duration: $ameDuration, iterations: $ameIteration }); $autoMoveElement.pause(); }else if($ameDirection==='right-to-left'){ $autoMoveElement=$autoMoveElementItem.animate([ { transform: 'translateX('+$sectionItemWidth+'px)' }, { transform: 'translateX(-'+$itemWidth+'px)' } ], { duration: $ameDuration, iterations: $ameIteration }); $autoMoveElement.pause(); }else if($ameDirection==='top-to-bottom'){ $autoMoveElement=$autoMoveElementItem.animate([ { transform: 'translateY(-'+$itemHeight+'px)' }, { transform: 'translateY('+$sectionHeight+'px)' } ], { duration: $ameDuration, iterations: $ameIteration }); $autoMoveElement.pause(); }else if($ameDirection==='bottom-to-top'){ $autoMoveElement=$autoMoveElementItem.animate([ { transform: 'translateY('+$sectionItemHeight+'px)' }, { transform: 'translateY(-'+$itemHeight+'px)' } ], { duration: $ameDuration, iterations: $ameIteration }); $autoMoveElement.pause(); }else if($ameDirection==='custom'){ let $ameCustomDirections=$animationEffectSettings['wdt_ame_custom_directions']; if($ameCustomDirections.length){ let $ameCustomDirectionPoints=$self.generateRandomPoints($ameCustomDirections); $autoMoveElement=$autoMoveElementItem.animate($ameCustomDirectionPoints, { duration: $ameDuration, iterations: $ameIteration }); $autoMoveElement.pause(); }} if('IntersectionObserver' in window){ let $observer; let $observerOptions={ root: null, rootMargin: "0px", threshold: 0.1 }; $observer=new IntersectionObserver($self.autoMovementOnIntersect, $observerOptions); $observer.observe($scope[0]); }else{ $autoMoveElement.play(); }}; $self.animationEffectMarquee=function(){ $scope.find('.elementor-widget-container').wrapInner('
') let $marqueeElementItem=$scope.find('.wdt-effect-marquee-wrapper'); let $width=$animationEffectSettings['wdt_mqe_width']['size'] ? $animationEffectSettings['wdt_mqe_width']['size']:200; let $height=$animationEffectSettings['wdt_mqe_height']['size'] ? $animationEffectSettings['wdt_mqe_height']['size']:120; let $speed=$animationEffectSettings['wdt_mqe_speed']['size'] ? $animationEffectSettings['wdt_mqe_speed']['size']:1; let $direction=$animationEffectSettings['wdt_mqe_direction'] ? $animationEffectSettings['wdt_mqe_direction']:'left-to-right'; let $boundTo=$animationEffectSettings['wdt_mqe_bound_to'] ? $animationEffectSettings['wdt_mqe_bound_to']:'section'; let $boundToElement=($boundTo==='section') ? $scope.parents('.elementor-section'):$scope.parents('.elementor-column'); $marqueeElementItem.css({ 'position': 'absolute', 'width': $width, 'height': $height }); const $itemWidth=$marqueeElementItem.width(); const $itemOffset=$marqueeElementItem.offset(); const $itemOffsetLeft=$itemOffset.left; const $parentWidth=$boundToElement.width(); const $parentOffset=$boundToElement.offset(); const $parentOffsetLeft=$parentOffset.left; if($direction=='right-to-left'){ let $itemInitPosition=0; const $leftDiff=parseFloat($itemOffsetLeft) - parseFloat($parentOffsetLeft); const $rightPositionX=parseFloat($parentWidth) - parseFloat($leftDiff); let $leftOffset=parseFloat($leftDiff) + parseFloat($itemWidth); $leftOffset='-' + parseFloat($leftOffset); function animationLoop(){ $itemInitPosition=$itemInitPosition - $speed; $marqueeElementItem.css({ 'left': $itemInitPosition + 'px' }); $frameRtlID=window.requestAnimationFrame(animationLoop); if($itemInitPosition <=$leftOffset){ window.cancelAnimationFrame($frameRtlID); $itemInitPosition=$rightPositionX; $frameRtlID=window.requestAnimationFrame(animationLoop); }} let $frameRtlID=window.requestAnimationFrame(animationLoop); }else{ let $itemInitPosition=0; const $leftDiff=parseFloat($itemOffsetLeft) - parseFloat($parentOffsetLeft); const $maxPositionWidth=parseFloat($leftDiff) + parseFloat($itemWidth); const $maxPositionX=parseFloat($parentWidth) - parseFloat($maxPositionWidth) + parseFloat($itemWidth); const $loopPositionX=parseFloat($leftDiff) + parseFloat($itemWidth); function animationLoop(){ $itemInitPosition=$itemInitPosition + $speed; $marqueeElementItem.css({ 'left': $itemInitPosition + 'px' }); $frameLtrID=window.requestAnimationFrame(animationLoop); if($itemInitPosition >=$maxPositionX){ window.cancelAnimationFrame($frameLtrID); $itemInitPosition=-$loopPositionX; $frameLtrID=window.requestAnimationFrame(animationLoop); }} let $frameLtrID=window.requestAnimationFrame(animationLoop); }};}; const wdtWidgetsInViewHandlerInit=function($scope){ const $self=this, $window=$(window), $widgetId=$scope.data('id'), $editMode=Boolean(elementorFrontend.isEditMode()); let $inViewSettings=false; let $inViewLoop=false; let $inViewElement=$scope[0]; $self.init=function(){ $self.inViewStatusUpdateInit(); }; $self.inViewStatusUpdateInit=function(){ if($editMode){ $inViewSettings=$self.generateEditorSettings($widgetId); }else{ $inViewSettings=$scope.data('settings')||false; $inViewSettings=(false!==$inViewSettings) ? $inViewSettings:false; } if(!$inViewSettings||!$inViewSettings['wdt_enable_inview_status']){ return false; } $inViewLoop=$inViewSettings['wdt_enable_inview_loop']; if('IntersectionObserver' in window){ $self.createObserver(); }}; $self.generateEditorSettings=function($widgetId){ let $editorModels=null; let $editorSettings={}; if(!window.elementor.hasOwnProperty('elements')){ return false; } $editorModels=window.elementor.elements.models; if(!$editorModels){ return false; } $.each($editorModels, function(index, obj){ $.each(obj.attributes.elements.models, function(index, obj){ $.each(obj.attributes.elements.models, function(index, obj){ if($widgetId===obj.id){ $editorSettings=obj.attributes.settings.attributes; }}); }); }); let $wdtEditorKeys=Object.keys($editorSettings).filter((key)=> key.includes('wdt')); let $wdtEditorSettings=$wdtEditorKeys.reduce((cur, key)=> { return Object.assign(cur, { [key]: $editorSettings[key] })}, {}); return $wdtEditorSettings; }; $self.createObserver=function(){ let $observer; let $options={ root: null, rootMargin: "0px", threshold: 1 }; $observer=new IntersectionObserver($self.handleIntersect, $options); $observer.observe($inViewElement); } $self.handleIntersect=function(entries, $observer){ entries.forEach((entry)=> { if(entry.isIntersecting){ entry.target.classList.add('wdt-item-is-inview'); }else{ if($inViewLoop){ entry.target.classList.remove('wdt-item-is-inview'); }} }); }}; $(window).on('elementor/frontend/init', function (){ elementorFrontend.hooks.addAction('frontend/element_ready/widget', wdtWidgetsOptionsHandler); }); })(jQuery); var debounce=function(t,e,a){var n;return function(){var r=this,u=arguments,i=a&&!n;clearTimeout(n),n=setTimeout((function(){n=null,a||t.apply(r,u)}),e),i&&t.apply(r,u)}};function returnCurrencySymbol(t=null){if(null===t)return"";let e={USD:"$",EUR:"€",CRC:"₡",GBP:"£",ILS:"₪",INR:"₹",JPY:"¥",KRW:"₩",NGN:"₦",PHP:"₱",PLN:"zł",PYG:"₲",THB:"฿",UAH:"₴",VND:"₫"};return void 0!==e[t]?e[t]:""}jQuery(document).ready((function(){jQuery(".bdt-ss-link").on("click",(function(){var t=jQuery("");jQuery("body").append(t),t.val(jQuery(this).data("url")).select(),document.execCommand ("copy"),t.remove(),jQuery(this).find(".bdt-social-share-title").html(jQuery(this).data("copied")),setTimeout(()=>{jQuery(this).find(".bdt-social-share-title").html(jQuery(this).data("orginal"))},5e3)}))})),jQuery(document).ajaxComplete((function(t,e,a){if(e.responseJSON&&void 0!==e.responseJSON.cart_hash&&e.responseJSON.cart_hash&&jQuery(".bdt-offcanvas").hasClass("__update_cart")){let t=jQuery(".bdt-offcanvas.__update_cart").attr("id");bdtUIkit.util.ready((function(){bdtUIkit.offcanvas("#"+t).show()}))}})); (()=>{"use strict";var e,r,n,a={},c={};function __webpack_require__(e){var r=c[e];if(void 0!==r)return r.exports;var n=c[e]={exports:{}};return a[e].call(n.exports,n,n.exports,__webpack_require__),n.exports}__webpack_require__.m=a,e=[],__webpack_require__.O=(r,n,a,c)=>{if(!n){var i=1/0;for(o=0;o=c)&&Object.keys(__webpack_require__.O).every((e=>__webpack_require__.O[e](n[t])))?n.splice(t--,1):(_=!1,c0&&e[o-1][2]>c;o--)e[o]=e[o-1];e[o]=[n,a,c]},__webpack_require__.f={},__webpack_require__.e=e=>Promise.all(Object.keys(__webpack_require__.f).reduce(((r,n)=>(__webpack_require__.f[n](e,r),r)),[])),__webpack_require__.u=e=>714===e?"code-highlight.28a979661569ddbbf60d.bundle.min.js":721===e?"video-playlist.74fca1f2470fa6474595.bundle.min.js":256===e?"paypal-button.3d0d5af7df85963df32c.bundle.min.js":699===e?"60745ddf42fde6647dbc.bundle.min.js":156===e?"stripe-button.2acbca466dfeb9585680.bundle.min.js":241===e?"progress-tracker.e19e2547639d7d9dac17.bundle.min.js":26===e?"animated-headline.ffb4bb4ce1b16b11446d.bundle.min.js":534===e?"media-carousel.aca2224ef13e6f999011.bundle.min.js":369===e?"carousel.9b02b45d7826c1c48f33.bundle.min.js":804===e?"countdown.b0ef6392ec4ff09ca2f2.bundle.min.js":888===e?"hotspot.6ab1751404c381bfe390.bundle.min.js":680===e?"form.72b77b99d67b130634d2.bundle.min.js":121===e?"gallery.8ca9a354ce039d1ba641.bundle.min.js":288===e?"lottie.565b778d23c04461c4ea.bundle.min.js":42===e?"nav-menu.70d63d6d093f3a45a0c6.bundle.min.js":50===e?"popup.483b906ddaa1af17ff14.bundle.min.js":985===e?"load-more.064e7e640e7ef9c3fc30.bundle.min.js":287===e?"posts.e33113a212454e383747.bundle.min.js":824===e?"portfolio.042905bde20a1afccada.bundle.min.js":58===e?"share-buttons.81497e7fccd4fa77b6b9.bundle.min.js":114===e?"slides.fb6b9afd278bb9c5e75b.bundle.min.js":443===e?"social.2d2e44e8608690943f29.bundle.min.js":838===e?"table-of-contents.e42afd7d58cf06ab7a63.bundle.min.js":685===e?"archive-posts.80f1139e64eb8bd1a74a.bundle.min.js":858===e?"search-form.6eb419c467197ca411a7.bundle.min.js":102===e?"woocommerce-menu-cart.faa7b80e9ba9e5072070.bundle.min.js":1===e?"woocommerce-purchase-summary.46445ab1120a8c28c05c.bundle.min.js":124===e?"woocommerce-checkout-page.b18af78282979b6f74e4.bundle.min.js":859===e?"woocommerce-cart.fc30c6cb753d4098eff5.bundle.min.js":979===e?"woocommerce-my-account.3ee10d01e625dad87f73.bundle.min.js":497===e?"woocommerce-notices.da27b22c491f7cbe9158.bundle.min.js":800===e?"product-add-to-cart.023d7d31fbf96c3dbdfc.bundle.min.js":149===e?"loop.a9bed2dcd86eddf71249.bundle.min.js":153===e?"loop-carousel.4e8fd6593adbba21698e.bundle.min.js":356===e?"ajax-pagination.a2f9062c62a0ff30f25e.bundle.min.js":495===e?"mega-menu.f4e036531fed147c8f1f.bundle.min.js":157===e?"mega-menu-stretch-content.b203a97f096c18f3d1a2.bundle.min.js":244===e?"menu-title-keyboard-handler.ec514149d506e0fe9c54.bundle.min.js":209===e?"nested-carousel.9145d6891784d5818672.bundle.min.js":188===e?"taxonomy-filter.c1e2da2a112b3ab83ed8.bundle.min.js":void 0,__webpack_require__.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),__webpack_require__.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),r={},n="elementor-pro:",__webpack_require__.l=(e,a,c,i)=>{if(r[e])r[e].push(a);else{var _,t;if(void 0!==c)for(var b=document.getElementsByTagName("script"),o=0;o{_.onerror=_.onload=null,clearTimeout(d);var c=r[e];if(delete r[e],_.parentNode&&_.parentNode.removeChild(_),c&&c.forEach((e=>e(a))),n)return n(a)},d=setTimeout(onScriptComplete.bind(null,void 0,{type:"timeout",target:_}),12e4);_.onerror=onScriptComplete.bind(null,_.onerror),_.onload=onScriptComplete.bind(null,_.onload),t&&document.head.appendChild(_)}},(()=>{var e;__webpack_require__.g.importScripts&&(e=__webpack_require__.g.location+"");var r=__webpack_require__.g.document;if(!e&&r&&(r.currentScript&&(e=r.currentScript.src),!e)){var n=r.getElementsByTagName("script");n.length&&(e=n[n.length-1].src)}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),__webpack_require__.p=e})(),(()=>{var e={396:0};__webpack_require__.f.j=(r,n)=>{var a=__webpack_require__.o(e,r)?e[r]:void 0;if(0!==a)if(a)n.push(a[2]);else if(396!=r){var c=new Promise(((n,c)=>a=e[r]=[n,c]));n.push(a[2]=c);var i=__webpack_require__.p+__webpack_require__.u(r),_=new Error;__webpack_require__.l(i,(n=>{if(__webpack_require__.o(e,r)&&(0!==(a=e[r])&&(e[r]=void 0),a)){var c=n&&("load"===n.type?"missing":n.type),i=n&&n.target&&n.target.src;_.message="Loading chunk "+r+" failed.\n("+c+": "+i+")",_.name="ChunkLoadError",_.type=c,_.request=i,a[1](_)}}),"chunk-"+r,r)}else e[r]=0},__webpack_require__.O.j=r=>0===e[r];var webpackJsonpCallback=(r,n)=>{var a,c,[i,_,t]=n,b=0;if(i.some((r=>0!==e[r]))){for(a in _)__webpack_require__.o(_,a)&&(__webpack_require__.m[a]=_[a]);if(t)var o=t(__webpack_require__)}for(r&&r(n);b